﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SlimDX;
using RaygunDiplomacy.Entities;

namespace RaygunDiplomacy.Model.EntitiesModule
{
   public class EntityFlyweightBase : IEntityFlyweight
   {
      #region Fields

      List<StatisticSource> baseStatistics = new List<StatisticSource>();

      List<IEntityComponent> components = new List<IEntityComponent>();

      #endregion

      #region Properties

      /// <summary>
      /// Extra things the entity has
      /// </summary>
      public List<IEntityComponent> Components
      {
         get { return this.components; }
      }

      /// <summary>
      /// The size of the entity, in tiles/cubes
      /// </summary>
      /// <remarks>TGU: I chose Vector3, but am not sure if this shouldn't be some grouping of three ints, rather than three floats</remarks>
      public Vector3 BaseSize
      {
         get;
         set;
      }

      public List<StatisticSource> BaseStatistics
      {
         get { return baseStatistics; }
      }

      #endregion
   }
}
